library(knitr)
library(png)

Résumé

Cet atelier Numérliab a pour objectif d’introduire la plateforme Google Earth Engine (EE) et certaines de ses fonctionnalités.

Earth Engine est un logiciel en ligne de la compagnie Google qui met à la disposition de ses utilisateurs une grande variété de couches géographiques (images satellitaires, données climatiques, topographiques, etc.), ainsi que des outils pour les analyser. L’avantage de EE est qu’une grande majorité des calculs sont faits directement par les serveurs de Google sur le cloud, donc beaucoup plus rapidement que sur un ordinateur personnel. Le but de cet atelier n’est pas d’apprendre un nouveau language de programmation, mais plutôt de présenter certains outils et codes reproductibles et adaptables à vos besoins.

Objectifs

Étape 1 : Introduction à l’interface EE

NOTE : AJOUT DE LIENS / MÉTHODES D’ACCÈS A EE? p-e un peu plus d’intro de base

Voici quelques informations pour vous retrouver dans l’interface

### NOTE: P-E grandir la figure un peu?

Panneau de gauche
- Bibliothèque où sont enregistrés tous vos codes
- Bibliothèque de GEE où sont les exemples de codes et la description des outils GEE
- Bibliothèque de vos propres couches (shapefiles, raster et autres bases de données).

Panneau du centre
- Éditeur de code où vous faites vos calculs

Panneau de droite
- Onglet d’inspection de la couche pour inspecter les métadonnées de votre carte (informations sur les couches et les pixels)
- Console des sorties où l’information des différentes cartes ou les graphiques s’affichent
- Gestionnaire de tâche pour les documents importés ou exportés

Barre de recherche
- Pour rechercher un lieu ou des couches de données

Carte
- Carte interactive où sont affichées vos couches calculées par-dessus une carte typique de Google

Étape 2 : Sélectionner un lieu d’intérêt à l’aide des outils de géométrie

Naviguer sur la carte jusqu’au Parc National de la Mauricie. Il est aussi possible de faire une recherche à l’aide de la barre de recherche, p. ex. “Shawinigan”.

  1. À l’aide de l’outil de géométrie, « ajouter un repère » en cliquant sur le pictogramme de repère et déposez-le au milieu du Parc national.
  2. Cliquer sur « exit » une fois que le repère est placé
  3. Renommer le nouveau repère « pnm » dans le haut de votre script

Alternative, utiliser la ligne de code suivante

var pnm = /* color: #d63000 */ee.Geometry.Point([-72.97, 46.74])

N’oubliez pas d’enregistrer votre code à l’aide du bouton enregistrer

Étape 3 : Charger et afficher une carte de l’élévation

Pour importer une couche, vous devrez la charger à partir de la banque de données de Earth Engine. Pour cela, il suffit de rechercher au sein du catalogue EE à l’aide de la barre de recherche et de l’importer. À noter que lorsqu’une couche est importée elle ne s’affichera pas directement. Comme aucunes limites n’ont été spécifiées pour cette couche, elle contient l’information reliée à une énorme superficie et le mieux est de la filtrer pour avoir un affichage autour d’un lieu d’intérêt. Voici un exemple avec des données d’élévation.

print(srtm);
Map.addLayer(srtm);

Map.addLayer(srtm, {min: 0, max: 400},"Élévation");
Map.addLayer(srtm, {min: 0, max: 400, palette: ['blue', 'yellow', 'red']},"Élévation colorée");

var ombre = ee.Terrain.hillshade(srtm);
Map.addLayer(ombre, {min: 150, max:255}, 'Ombre');

var pente = ee.Terrain.slope(srtm);
Map.addLayer(pente, {min: 0, max: 30}, 'Pente')

Étape 4 : Travailler avec des images satellitaires pour une région déterminée

Le catalogue de données de Google Earth Engine permet d’accéder à de nombreuses sources d’images satellitaires. Pour travailler sur d’un lieu d’intérêt, il faudra filtrer les données disponibles pour ce lieu pour une période donnée. Commencez par importer les images du satellite Sentinel 2 (aussi possible pour Landsat).

var region_filtre=sent2.filterBounds(pnm)
                                     .filterDate("2020-07-01", "2020-08-30")
                                     .filterMetadata('CLOUDY_PIXEL_PERCENTAGE','less_than',10);

print(region_filtre.size());

NOTE ; la fin de l’étape 4 ne semble pas vraiment fonctionner, la fonction de filtre ne fait pas le lien avec le call d’image et tout. à réviser

Étape 5 : Sélectionner des images satellitaires selon les contours d’un shapefile

Dans les étapes précédentes, le lieu d’intérêt était le Parc National de la Maurice. Un repère a été placé à un endroit aléatoire dans le Parc. Il est cependant possible de travailler dans Earth Engine avec des superficies prédéterminées par exemple dans le cas d’un fichier shapefile. Pour ce faire, il vous faudra importer les fichiers shapefiles de votre ordinateur vers Google Earth Engine.

var pnm_poly = ee.FeatureCollection('users/XXX/PNM_poly');

Une fois le fichier shapefile importé, il est possible d’afficher la photo satellite seulement pour cette superficie avec l’outil « image.clip » et le code suivant:

var polygone = region.median();
Map.addLayer(polygone.clip(shape_pnm),couleur_rgb,"Image Satellite ajustée1");

ou encore

Map.addLayer(image.clip(shape_pnm),couleur_rgb,"Image Satellite ajustée2");

Étape 6 : Calculer un indice spectrale (ex: NDVI)

Un autre exercice qui requiert peu de code avec Google Earth Engine est de créer une nouvelle couche de donnée qui contient une bande calculée comme l’indice NDVI.

NOTE: ajouter définition du NDVI